System and method for updating information in an instant messaging application

ABSTRACT

A method is performed by a mobile device having one or more processors and memory for updating information in an instant messenger application installed on the mobile device. The method includes: receiving an instant message from a remote server, the instant message including a first user actionable item; displaying the instant message including the first user actionable item in a graphical user interface corresponding to the instant messenger application; detecting a first user input through the first user actionable item; in accordance with the first user input: generating an information update request; sending the information update request to the remote server; receiving a response to the information update request from the remote server; and updating the instant message in the graphical user interface in accordance with the response from the remote server.

RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 14/195,766, entitled “SYSTEM AND METHOD FORUPDATING INFORMATION IN AN INSTANT MESSAGING APPLICATION”, filed Mar. 3,2014, which is a continuation application of PCT Patent Application No.PCT/CN2013/087932, entitled “SYSTEM AND METHOD FOR UPDATING INFORMATIONIN AN INSTANT MESSAGING APPLICATION” filed Nov. 27, 2013, which claimspriority to Chinese Patent Application No. 201310157056.3, “AN INSTANTMESSAGING METHOD, TERMINAL, AND SYSTEM,” filed Apr. 28, 2013, all ofwhich are hereby incorporated by reference in their entirety.

FIELD OF THE INVENTION

The present disclosure relates to the communication field, especiallyrelates to a method, terminal and system for instant messenger.

BACKGROUND OF THE INVENTION

Instant Messenger (short for IM) refers to an application that caninstantly send and receive the Internet messages, etc. With thedevelopment of the Internet technology, Instant Messenger is no longer asimple chat tool, Instant Messenger's function becomes increasinglyabundant and is gradually integrated with numerous functions of email,blog, music, TV, game and search function, it has been developed to bean integrated information platform integrating communication,information, entertainment, search, e-commerce, office collaboration andenterprise customer service, etc. With the development of mobileInternet, Internet Instant Messenger becomes mobile too. At present, allthe important Instant Messenger providers offer the businesses thataccess the Internet Instant Messenger through the mobile terminal, theuser can send and receive the messages through the mobile terminalsequipped with the corresponding client-side software, such as cellphone, tablets, vehicle terminal, etc.

The conventional IM message only supports the receiver to do the basicreading and view, two sides of Instant Messenger can interact with eachother only through the function option that each client-side or thesession interface of Instant Messenger carries, however, the functionthat the session interface of Instant Messenger carries is oftenrestricted because of display screen size of mobile terminal, thefunction options that the client-side with different types or differentversion carries are also usually different, it is inconvenient for theinteraction between two sides of Instant Messenger.

SUMMARY

The above deficiencies and other problems associated with theconventional approach of exchanging information between differentservers using an instant messenger are reduced or eliminated by thepresent disclosure disclosed below. In some embodiments, the presentdisclosure is implemented in a mobile device (e.g., a smartphone or atablet computer) that has one or more processors, memory and one or moremodules, programs or sets of instructions stored in the memory forperforming multiple functions. Instructions for performing thesefunctions may be included in a computer program product configured forexecution by one or more processors.

One aspect of the present disclosure involves a computer-implementedmethod performed by a mobile device having one or more processors andmemory for updating information in an instant messenger applicationinstalled on the mobile device. The computer-implemented methodincludes: receiving an instant message from a remote server, the instantmessage including a first user actionable item; displaying the instantmessage including the first user actionable item in a graphical userinterface corresponding to the instant messenger application; detectinga first user input through the first user actionable item; in accordancewith the first user input: generating an information update request;sending the information update request to the remote server; receiving aresponse to the information update request from the remote server; andupdating the instant message in the graphical user interface inaccordance with the response from the remote server.

Another aspect of the present disclosure involves a mobile device. Themobile device includes memory, one or more processors, and one or moreprograms stored in the memory and configured for execution by the one ormore processors. The one or more programs include instructions for:receiving an instant message from a remote server, the instant messageincluding a first user actionable item; displaying the instant messageincluding the first user actionable item in a graphical user interfacecorresponding to the instant messenger application; detecting a firstuser input through the first user actionable item; in accordance withthe first user input: generating an information update request; sendingthe information update request to the remote server; receiving aresponse to the information update request from the remote server; andupdating the instant message in the graphical user interface inaccordance with the response from the remote server.

Another aspect of the present disclosure involves a non-transitorycomputer readable storage medium having stored therein one or moreprograms for execution by one or more processors of a mobile device, theone or more programs including instructions for: receiving an instantmessage from a remote server, the instant message including a first useractionable item; displaying the instant message including the first useractionable item in a graphical user interface corresponding to theinstant messenger application; detecting a first user input through thefirst user actionable item; in accordance with the first user input:generating an information update request; sending the information updaterequest to the remote server; receiving a response to the informationupdate request from the remote server; and updating the instant messagein the graphical user interface in accordance with the response from theremote server.

BRIEF DESCRIPTION OF THE DRAWINGS

The aforementioned features and advantages of the present disclosure aswell as additional features and advantages thereof will be more clearlyunderstood hereinafter as a result of a detailed description ofpreferred embodiments when taken in conjunction with the drawings.

FIG. 1 is a flowchart of an IM method according to some embodiments ofthe present disclosure;

FIG. 2 is another flowchart of an IM method according to someembodiments of the present disclosure;

FIG. 3 is a schematic block diagram of an IM terminal according to someembodiments of the present disclosure;

FIG. 4 is another schematic block diagram of an IM terminal according tosome embodiments of the present disclosure;

FIGS. 5A-5C are schematic screenshots of how an IM message is updatedbased on user inputs through buttons displayed in the IM sessioninterface according to some embodiments of the present disclosure;

FIG. 6 is a block diagram of an IM system according to some embodimentsof the present disclosure;

FIG. 7 is another block diagram of an IM system according to someembodiments of the present disclosure;

FIG. 8 is a flowchart of a method of updating an IM message according tosome embodiments of the present disclosure; and

FIG. 9 is a block diagram of a mobile device according to someembodiments of the present disclosure.

Like reference numerals refer to corresponding parts throughout theseveral views of the drawings.

DESCRIPTION OF EMBODIMENTS

Reference will now be made in detail to embodiments, examples of whichare illustrated in the accompanying drawings. In the following detaileddescription, numerous specific details are set forth in order to providea thorough understanding of the subject matter presented herein. But itwill be apparent to one skilled in the art that the subject matter maybe practiced without these specific details. In other instances,well-known methods, procedures, components, and circuits have not beendescribed in detail so as not to unnecessarily obscure aspects of theembodiments. Note that terms like “IM message” and “instant message” areused interchangeably in this application. Similarly, terms like “IMapplication,” “instant messenger,” and “instant messaging application”are used interchangeably in this application. Depending on the context,they may refer to the program located on the server side or the programlocated on the client side (e.g., an app installed on the smartphone).

In the following, combined with the attached drawings of the embodimentof the present disclosure, the technical scheme of the embodiment of thepresent disclosure will be described clearly and entirely. Note that thedescribed embodiments are only some of the embodiments, not all of them.Based on the embodiments of the present disclosure, all the otherembodiments obtained by the common technicians without any creativelabor belong to the protective scope of the present disclosure.

IM method in the embodiments of the present disclosure can be realizedin an IM terminal, which may include: terminal devices such as PC(Personal Computer), tablets, cell phone, smart phone, laptop, etc, alsomay include client-side module of the aforementioned terminal device,for example: IM application client-side, etc. After IM terminal logs inwith IM account, it can communicate with other IM terminal or backgroundserver, it can pre-establish mutual associated relationship betweenlogin accounts of IM terminal that communicates with each other, theassociated accounts may include but not limit to associatedrelationship, such as mutual friends, follow or be followed, subscribeor be subscribed, etc., in the IM interactive process of embodiment ofthe present disclosure, IM terminal and its login account can be theonly correspondence, so adopting the first IM terminal and second IMterminal can indicate that it logs in the IM terminal of thecorresponding account, respectively.

FIG. 1 is a flowchart of an IM method according to some embodiments ofthe present disclosure. As described below in connection with FIGS. 6and 7, this IM method may be performed by an IM terminal or a servercomputer. This method process may include the following steps:

S101, detect the operation of clicking the event button in the IMmessage that the first IM terminal sends during the IM session with thefirst IM terminal. Specifically, it can display the IM message carryingthe event button in IM session interface shown in FIGS. 5A to 5C,display the event button in the message box which displays the IMmessage carrying the event button, IM terminal can receive the operationthat the users click the event button by input devices as touch-screen,mouse, etc.

S102, obtain the trigger event message corresponding to the clickedevent button in the mentioned IM message. Specifically, the mentioned IMmessage carrying the event button may include at least one event buttonand trigger event message corresponding to each event button, thefollowing takes the example of information content that a typical IMmessage carrying the event button contains:

-   -   Title (message title);    -   Des (message abstract);    -   Picture (message attached drawing);    -   URL (message link URL);    -   button list: (event button information list)    -   button 1    -   name: (name of the first event button)    -   key: b1 (trigger event message is b1);    -   button 2    -   name: (name of the second event button)    -   key: b2 (trigger event message is b2);

Upon receiving the user's click on the second event button of this IMmessage, the IM terminal may search from this IM message and obtain thetrigger event message corresponding to the second event button (As forb2). Optionally, the mentioned IM message carrying the event button canalso include the display information of each event button, such as thebutton displaying pictures, the display state control parameters, etc.IM terminal can display the event button in IM session interfaceaccording to the display information of the event button.

S103, send the mentioned trigger event message corresponding to theevent button to the mentioned first IM terminal. Specifically, it cansend the trigger event message corresponding to the clicked event buttonthat is obtained by searching from this IM message to the mentionedfirst IM terminal, namely that is the receiver's account of thementioned IM message carrying the event button. For example, User Asends the IM message carrying the event button to User B, before sendingthe IM message carrying the event button, User A can set the executionevent corresponding to each trigger event message, after receiving thetrigger event message that User B sends according to click operation,User A can execute the execution event corresponding to this triggerevent message, for example, the event button is the vote button, then itcan update the vote statistic data according to the trigger eventmessage of vote button that User B clicks, for another example, thementioned event button is “Yes” button, then it can plus 1 to this IMmessage according to the trigger event message of the button that User Bclicks, it can also send the preset response message of trigger eventmessage to User B according to the trigger event message of the eventbutton that User B clicks, like return the preset web page, return thepreset IM message, or return an event message to change the displaystate of the mentioned event button of the receiver in IM session, forinstance, User B clicks the vote button in IM message, User A can returnthe response message carrying the current vote statistic data to User B,User B can change the display state of the mentioned event button of thereceiver in IM session according to this response message, for example,set the vote button as non click state and shown in gray, or display thementioned current vote statistic data in button area.

Optionally, the login account of the first IM terminal in thisembodiment can be public account, that is all the communication accountsfor the medium, departments, enterprises or public figures, it caninteract the messages with the public account by the public platformserver, for example, User A in the above example is the public account,User B is the private account, then User A can submit the mentioned IMmessage carrying the event button to the public platform server, thepublic platform server pushes IM message carrying the event button tothe associated user of User A, after receiving the mentioned IM messagecarrying the event button, User B may submit the trigger event messagecorresponding to the event button to the public platform serveraccording to the user's operation, the public platform server sends thetrigger event message corresponding to the mentioned event button toUser A.

FIG. 2 is another flowchart of an IM method according to someembodiments of the present disclosure. In this embodiment, it takes anexample of IM interaction between a public account and a private accountto describe the implementation process of the present disclosure indetail, it needs to point out that applying the same theory cancompletely realize IM interactive scenes between private accounts, or IMinteractive scenes between public accounts, as shown in the figure, themethod process in this embodiment may include the following steps:

S201, the first IM terminal generates IM message carrying the eventbutton according to the editing operation. In specific implementation,after the first IM terminal in this embodiment logs in the publicaccount, it can edit, add the content information that generates the IMmessage carrying the event button according to the message module thatbackground server (such as public platform server) provides, theinformation content of the mentioned IM message may, as the example inthe above S102, include at least one event button and trigger eventmessage corresponding to each event button, optionally, it may alsoinclude the display information of each event button, such as buttondisplaying pictures, displaying state control parameters, etc. The firstIM terminal can also set the response message respectively correspondingto the trigger event message of each event button when IM messagecarrying the event button is generated.

S202, the first IM terminal sends the IM message carrying the eventbutton to the second IM terminal. In specific implementation, the firstIM terminal can send the IM message carrying the event button throughthe public platform server, so that makes the mentioned public platformserver to send the mentioned IM message carrying the event button to allthe associated accounts with the first IM terminal, the login account ofthe second IM terminal can establish the associated relationship withthe public account that the first IM terminal logs in through follow,subscribe or add as the friends or other ways in advance, so as to beable to obtain the IM message carrying the event button that the firstIM terminal sends.

S203, the second IM terminal obtains the operation of clicking the eventbutton in the IM message sent by the mentioned associated accounts inthe IM session. Specifically, after the second IM terminal receives theIM message carrying the event button that the first IM terminal sends,it can display the IM message carrying the event button in IM sessioninterface as shown in FIGS. 5A to 5C, display this event button in themessage box which displays the IM message carrying the event button, IMterminal can receive the operation that the users click the event buttonby input devices as touch-screen, mouse, etc.

S204, the second IM terminal obtains the mentioned trigger event messagecorresponding to the clicked event button in IM message. Specifically,the information content of the mentioned IM message may, as the examplein the above S102, include at least one event button and trigger eventmessage corresponding to each event button, the second IM terminal cansearch the trigger event message corresponding to the event buttonclicked according to the user's click operation, for example, when itreceives the second event button of this IM message that the userclicks, then it can search and obtain the trigger event message b2corresponding to the second event button from this IM message.

S205, the second IM terminal sends the trigger event messagecorresponding to the mentioned event button to the first IM terminal.

S206, the first IM terminal sends the response message of the mentionedtrigger event message to the second IM terminal. Specifically, the firstIM terminal can return the corresponding message to the second IMterminal according to the preset corresponding relationship betweenresponse messages and trigger event messages; the first IM terminal canalso return the response message to the second IM terminal according toits users' reply operation. In this embodiment, taking the vote buttonas an example, the IM message carrying the event button sent from thefirst IM terminal to the second IM terminal is the vote message,including three vote buttons corresponding to A, B and C, the first IMterminal sends the trigger event message b2 corresponding to the B eventbutton to the second IM terminal according to the users' clicking the Bevent button, after receiving it, the first IM terminal updates the votestatistic data according to the trigger event message to add one to thevote number of B, and return the response message, including thenotification message of voting successfully and current vote statisticdata to the second IM terminal. In the optional embodiment, the first IMterminal also can set the automatic return response message on thepublic platform server, for example, it returns the response message of“Successful vote” to the second IM terminal by default.

S207, the second IM terminal changes the display state of the clickedevent button in the mentioned IM message according to the responsemessage returned by the first IM terminal according to the mentionedtrigger event message. In specific implementation, change the displaystate of the clicked event button according to the display state controlparameters carried by IM message, for example, after receiving theresponse message, set the vote button as non click state and shown ingray, or display the mentioned current vote statistic data in buttonarea according to the content carried by the response message.

FIG. 3 is a schematic block diagram of an IM terminal according to someembodiments of the present disclosure. In this embodiment, the IMterminal can include:

Operation obtaining module 310, configured to detect the operation ofthe event button in the IM message sent by clicking the second IMterminal during the IM session with the first IM terminal. In specificimplementation, the IM terminal can display the IM message carrying theevent button in IM session interface shown in FIGS. 5A to 5C, displaythe event button in the message box of displaying the IM messagecarrying the event button, the operation obtaining module 310 canreceive the operation that the users click the event button by inputdevices as touch-screen, mouse, etc.

Trigger message obtaining module 320, configured to obtain the triggerevent message corresponding to the clicked event button in the mentionedIM message. Specifically, the information content of the mentioned IMmessage may, as the example in the above S102, include at least oneevent button and trigger event message corresponding to each eventbutton, the second IM terminal can search the trigger event messagecorresponding to the event button clicked according to the user's clickoperation, for example, when it receives the second event button of thisIM message that the user clicks, then it can search and obtain thetrigger event message b2 corresponding to the second event button fromthis IM message.

Trigger message sending module 330, configured to send the mentionedtrigger event message corresponding to the event button to the mentionedfirst IM terminal. Specifically, trigger message sending module 330 cansend the trigger event message corresponding to the clicked event buttonthat is obtained by searching from this IM message to the mentionedfirst IM terminal, namely that is the receiver's account of thementioned IM message carrying the event button. For example, User Asends the IM message carrying the event button to User B, before sendingthe IM message carrying the event button, User A can set the executionevent corresponding to each trigger event message, after receiving thetrigger event message that User B sends according to click operation,User A can execute the execution event corresponding to this triggerevent message.

Optionally, the login account of the first IM terminal in thisembodiment can be public account, that is all the communication accountsfor the medium, department, enterprises or public figures, the IMterminal in this embodiment can interact the messages with the publicaccount through the public platform server, which is that the messagesending module 330 is triggered to submit the trigger event messagecorresponding to the event button to the public platform server, and thepublic platform server sends the trigger event message corresponding tothe mentioned event button to the first IM terminal.

Furthermore, the IM terminal in the embodiment of the present disclosurecan also include:

Message receiving module 340, configured to receive the IM messagecarrying the event button sent by the first IM terminal, the mentionedIM message carrying the event button includes at least one event buttonand trigger event message corresponding to each event button.

Message display module 350, configured to display the mentioned at leastone event button in the mentioned IM message carrying the event buttonmessage. Optionally, the mentioned IM message carrying the event buttoncan also include the display information of each event button, such asthe button displaying pictures, the display state control parameters,etc. the message display module 350 can display the event button in IMsession interface according to the display information of the eventbutton.

Optionally, the mentioned IM terminal can also include:

Response message obtaining module 360, configured to obtain the responsemessage returned by the mentioned first IM terminal according to thementioned trigger event message. In specific implementation, before thefirst IM terminal sending the mentioned IM message carrying the eventbutton, the execution event corresponding to each trigger event messagecan be set, after receiving the trigger event message sent by the IMterminal in this embodiment according to the clicking operation, thefirst IM terminal can execute the execution event corresponding to thetrigger event message, and send the preset response message to thesecond IM terminal according to the trigger event message of the users'clicking event button of the second IM terminal, for example, return thepreset website, return the preset IM message, or return an event messageto change the display state of the mentioned event button of thereceiver in IM session. After receiving the response message returned bythe first IM terminal, the response message obtaining module 360 caninform the message display module 350 of changing the display state ofthe mentioned event button of the receiver in IM session according tothe response message, for example, set the vote button as non clickstate and shown in gray, or display the mentioned current vote statisticdata in button area.

FIG. 4 is another schematic block diagram of an IM terminal according tosome embodiments of the present disclosure. As shown in the figure, theIM terminal in the embodiment can include:

Message sending module 410, configured to send the IM message carryingthe event button to the second IM terminal. In specific implementation,as shown in the example of the above mentioned S102, the message contentof the mentioned IM message can include at least one event button andthe trigger event message corresponding to each event button, it canalso include the display message of each event button, such as thebutton displaying pictures, the display state control parameters, etc.

Trigger message obtaining module 420, configured to obtain the triggerevent message corresponding to the mentioned event button sent by thementioned second IM terminal according to the operation of clicking thementioned event button. In specific implementation, after receiving thementioned IM message carrying the event button, the second IM terminalcan display the IM message carrying the event button in the IM sessioninterface shown in FIGS. 5A to 5C, and display the event button in themessage box which display the IM message carrying the event button, thesecond IM terminal can receive the operation of users' clicking theevent button by input devices such as touch-screen, mouse, etc. and thensearch out the trigger event message corresponding to the clicked eventbutton according to the operation of the users' clicking the mentionedevent button, and send the trigger event message corresponding to thementioned event button to the IM terminal in this embodiment.Optionally, the login account of the IM terminal in this embodiment canbe public account, which is all the communication accounts for themedium, department, enterprises or public figures, which can exchangemessages with other IM terminals through public platform server.

That is, the mentioned message sending module 410 can be usedspecifically for sending the mentioned IM message carrying the eventbutton to public platform server to make the public platform server sendthe mention IM message carrying the event button to the mentioned secondIM terminal;

The mentioned trigger message obtaining module 420 can be usedspecifically for obtaining the trigger event message which isdistributed by the public platform server and corresponding to thementioned event button sent by the mentioned second IM terminalaccording to the operation of users' clicking the mentioned eventbutton.

Furthermore, the IM terminal in this embodiment can also include:

Message generation module 430, configured to generate the IM messagecarrying the event button according to the editing operation, thementioned IM message carrying the event button includes at least oneevent button and trigger event message corresponding to each eventbutton. In specific implementation, after the first IM terminal loggingin public account, the message generation module 430 in this embodimentcan generate the IM message carrying the event button according to themessage model provided by background server (such as public platformserver) by editing and adding the content message, as shown in theexample of the above mentioned S102, the message content of thementioned IM message shall include at least one event button and thetrigger event message corresponding to each event button, optionally, itcan also include the display message of each event button, such asbutton displaying pictures, displaying state control parameters, etc.

Furthermore, the IM terminal in this embodiment can also include:

Response message sending module 440, configured to return the responsemessage of the mentioned trigger event message to the mentioned secondIM terminal. In specific implementation, the response message sendingmodule 440 can return the corresponding respond message to the second IMterminal according to the preset corresponding relationship betweenresponse message and trigger event message, the response message sendingmodule 440 can also return the response message to the second IMterminal according to its users' reply operation. In this embodiment,taking the vote button as an example, the IM message carrying the eventbutton sent by the message sending module 410 is the vote message,including three vote buttons corresponding to A, B and C, the second IMterminal sends the trigger event message b2 corresponding to the B eventbutton according to the users' clicking the B event button, afterreceiving it, the first IM terminal in this embodiment can update thevote statistic data according to the trigger event message to add one tothe vote number of B, the response message sending module 440 can returnthe response message, including the notification message of votingsuccessfully and current vote statistic data to the second IM terminal.

Furthermore, the IM terminal in this embodiment can also include:

Response message setting module 450, configured to set the responsemessage corresponding to the mentioned trigger event message. Inspecific implementation, after the message generation module 430generating the IM message carrying the event button, the responsemessage setting module 450 can set the response messages correspondingto the trigger event messages of each event button separately. Thementioned response message sending module 440 searches the responsemessage corresponding to the trigger event message in response messagesetting module 450, and send the searched response message correspondingto the trigger event to the second IM terminal. In the optionalembodiments, the response message setting module 450 can also setautomatically returning response message in public platform server, forexample, setting that when receiving the trigger event messagecorresponding to a certain event button sent by the second IM terminal,the public platform server can return the response message of“successful vote” to the second IM terminal with default.

FIG. 6 is a block diagram of an IM system according to some embodimentsof the present disclosure. Note that the methods shown in FIG. 1-FIG. 2in the embodiment of the present disclosure can be used in the IM systemof this embodiment. The mentioned IM system includes the first IMterminal 610 and the second IM terminal 620, among which:

The mentioned first IM terminal 610 is the mentioned IM terminaldescribed by the above mentioned embodiment in reference to FIG. 4,configured to send the IM message carrying the event button to thementioned second IM terminal 620; obtaining the trigger event messagecorresponding to the mentioned event button sent by the mentioned secondIM terminal 620 according to the operation of clicking the mentionedevent button;

The mentioned second IM terminal 620 is the IM terminal described in theabove mentioned embodiment in reference to FIG. 3, configured to detectthe operation of clicking the event button in the IM message sent by thementioned associated accounts in the IM session with the first IMterminal 610; obtain the mentioned trigger event message correspondingto the clicked event button in IM message; send the mentioned triggerevent message corresponding to the event button to the mentioned firstIM terminal 610.

FIG. 7 is another block diagram of an IM system according to someembodiments of the present disclosure. Note that the method shown inFIG. 1-FIG. 2 in the embodiment of the present disclosure can be used inthe IM system of this embodiment. The IM system in this embodimentincludes the first IM terminal 710, the second IM terminal 720 and thebackground server 730, among which:

The mentioned first IM terminal 710 is the mentioned IM terminaldescribed by the above mentioned embodiment in reference to FIG. 4,configured to send the mentioned IM message carrying the event button topublic platform server 730, so as to make the mentioned public platformserver 730 send the mentioned IM message carrying the event button tothe mentioned second IM terminal 720; obtaining the trigger eventmessage which is distributed by the public platform server 730 andcorresponding to the mentioned event button sent by the mentioned secondIM terminal 720 according to the operation of users' clicking thementioned event button. In this embodiment, the mentioned login accountof the first IM terminal is the public account.

The mentioned second IM terminal 720 is the IM terminal described in theabove mentioned embodiment in reference to FIG. 3, configured to detectthe operation of clicking the event button in the IM message sent by thementioned associated accounts in the IM session with the first IMterminal 610; obtain the mentioned trigger event message correspondingto the clicked event button in IM message; send the mentioned triggerevent message to public platform server 730 to make the mentioned publicplatform server 730 send the mentioned trigger event message to thementioned first IM terminal 710.

The background server 730 is used for transferring the messageinteraction between the first IM terminal and the second IM terminal. Inspecific implementation, the mentioned background server can include thepublic platform server, as well as the IM server, the SNS (SocialNetworking Services) server, etc.

The embodiment of the present disclosure sends the trigger event messagecorresponding to the clicked event button to the IM terminal ofassociated accounts by the operation of clicking the event button in IMmessage in IM session, realizing a more flexible and general interactionmethod for IM interaction by expanding the IM message.

FIG. 8 is a flowchart of a method of updating an IM message according tosome embodiments of the present disclosure. As noted above, oneobjective of the present disclosure is to allow a user of an IMapplication to interact with an IM message without departing the IMapplication. For illustrative purposes, three screenshots of an IMsession interface at different stages on the IM terminal 500 depicted inFIGS. 5A to 5C, respectively.

As shown in FIG. 8, the IM terminal 500 (e.g., a smartphone) receives(800) an instant message from a remote server. In some embodiments, theinstant message includes a user actionable item, which could be a pushbutton, a dropdown menu, or a hyperlink. After receiving the IM message,the IM terminal 500 displays (810) the instant message including thefirst user actionable item in a graphical user interface correspondingto the instant messenger application. FIG. 5A depicts an IM sessioninterface 501 rendered on the display of the IM terminal 500. In thisexample, the IM session interface 501 is a graphical user interface thatincludes an IM message sent from a public account of the IM applicationwith which a private account of the IM application at the IM terminal500 is associated. For example, the public account belongs to a movietheater that periodically sends instant messages to subscribers of thepublic account promoting new movies. In this example, the IM messageincludes a message body (which is primarily text-based but may includeimages) including information like title, cast, director, length,synopsis, etc. A user who reviews the message body can learn at leastbasic information about this movie.

In some embodiments, the IM message shown in the IM session interface501 also includes an event button (e.g., the “View movie clip” button513 shown in FIG. 5A). If the user is interested in learning more aboutthe movie, e.g., watching the trailer of the movie, the user can triggerthe display of the movie's trailer within the IM application by pressingthe “View movie clip” button 513. The IM terminal 500 detects (820) theuser input through the user actionable item (the “View movie clip”button 513 in this example). In accordance with the user input, the IMterminal 500 performs (830) one or more operations. For example, the IMterminal 500 generates (831) an information update request and sends(833) the information update request to the remote server. Theinformation update request may include an identifier of the publicaccount responsible for generating and broadcasting the IM message andan identifier corresponding to the user-selected user actionable item,indicating what the user of the IM terminal 500 intends to view.

Subsequently, the IM terminal 500 receives (835) a response to theinformation update request from the remote server. In some embodiments,the remote server needs collaboration from the user associated with thepublic account to generate the response. For example, after receivingthe information update request, the remote server forwards theinformation update request to a user of the IM application at another IMterminal. Note that the user at the other IM terminal may be anindividual that is responsible for managing the public account or asoftware application installed on the other IM terminal for respondingto the requests from users who receive and interact with the IM message.In this case, the user is responsible for generating a messageincluding, e.g., a hyperlink to the movie trailer requested by the userof the IM terminal 500 and returns the message to the remote server. Theremote server then prepares the response to the information updaterequest in accordance with the message from the user at the other IMterminal.

In some other embodiments, the remote server is configured to store theinformation associated with the public account and it automaticallygenerates and sends IM messages to private accounts of subscribers ofthe public account at the IM application. In this case, the remoteserver identifies a user account associated with the instant message(i.e., the public account). The remote server then queries theinformation associated with the user account and determines a messagepredefined in the user account as being associated with the informationupdate request. Based on the predefined message, the remote serverprepares the response to the information update request and returns theresponse to the IM terminal 500.

After receiving the response, the IM terminal 500 updates (837) theinstant message in the graphical user interface in accordance with theresponse from the remote server. As shown in FIG. 5B, the message body511 shown in FIG. 5A is replaced by a small window showing the movievideo 517. In some embodiments, the response from the remote serverincludes a URL identifying the location of the movie trailer. Fromanalyzing the response, the IM terminal 500 (or more specially, the IMapplication running on the IM terminal 500) determines that the URLidentifies a video stream and then invokes a video player for playingthe movie trailer. Note that the video player may be a standaloneapplication or a plug-in of the IM application that is capable ofplaying video streams downloaded from a remote source (e.g., the remoteserver). Note that the play of the video stream as shown in FIG. 5B isonly for illustrative purposes. The new content associated with theresponse may have different modalities including image, text, audio orvideo.

In some embodiments, the IM terminal 500 also replaces the first useractionable item (e.g., the “View movie clip” button 513 in FIG. 5A) witha second user actionable item (e.g., the “Purchase ticket” button 515 inFIG. 5B. In this case, because the user has selected the “View movieclip” button 513, there is a good chance that the user may be interestedin purchasing a ticket to watch this movie. In other words, the seconduser actionable item to be shown in the graphical user interface is, atleast in part, determined by the user input through the first useractionable item. After the user clicks the second user actionable item(e.g., the “Purchase ticket” button 515), the IM terminal 500 detectsthe second user input through the user actionable item. In this case,because the user has pressed the “Purchase ticket” button 515, the IMterminal 500 generates a second information update request includinginformation identifying the user of the IM terminal 500 and his/herintent to purchase a ticket to watch this movie.

Next, the IM terminal sends the second information update request to theremote server and then receives a second response to the secondinformation update request. Upon receiving the second response, the IMterminal 500 then updates the instant message in the graphical userinterface in accordance with the second response. As shown in FIG. 5C,after the user presses the “Purchase ticket” button 515, the new IMsession interface 505 depicts an updated graphical user interfaceincluding a new message body 519 indicating that the ticket (e.g., a PDFdocument including an electronic ticket number) is ready to be sent tothe user via email. The user can confirm the purchase of the ticket bypressing the “Confirm” button 521 to complete the commercialtransaction. In some embodiments, the remote server or the publicaccount does not provide a new message like the one shown in FIG. 5Cbecause it deems that the user has already approved the transaction bypressing the “Purchase ticket” button 515 in FIG. 5B. In this case, thenew message may only suggest that the ticket has been issued bydisplaying, e.g., a bar code, on the graphical user interface so thatthe user can present this bar code at the box office of a movie theaterto redeem, e.g., a paper ticket. In either case, the remote serverperforms a transaction by, e.g., retrieving a credit card accountassociated with the user using the instant messenger application at themobile device from its database, and submitting a request to thecorresponding issuing bank or credit card agency for deducting a certainamount of money from this user's credit card account. In some otherembodiments, the remote server may designate another agency for handlingthe transaction by either forwarding the second information request tothe agency or having the second information request sent to the agencydirectly. By doing so, the user's request may be served moreefficiently. In some embodiments, the information associated with thesecond information update request may be encrypted because it containsmore sensitive information (e.g., credit card account information) thatshould be kept away from potential hackers.

FIG. 9 is a block diagram of a mobile device 900 according to someembodiments of the present disclosure. While certain specific featuresare illustrated, those skilled in the art will appreciate from thepresent disclosure that various other features have not been illustratedfor the sake of brevity and so as not to obscure more pertinent aspectsof the implementations disclosed herein.

To that end, the mobile device 900 includes one or more processing units(CPU's) 904, one or more network or other communications interfaces 908,a display 901, memory 906, one or more mobile storage devices 903, andone or more communication buses 905 for interconnecting these andvarious other components. The communication buses 905 may includecircuitry (sometimes called a chipset) that interconnects and controlscommunications between system components. Memory 906 includes high-speedrandom access memory, such as DRAM, SRAM, DDR RAM or other random accesssolid state memory devices; and may include non-volatile memory, such asone or more magnetic disk storage devices, optical disk storage devices,flash memory devices, or other non-volatile solid state storage devices.Memory 906 may optionally include one or more storage devices remotelylocated from the CPU(s) 904. Memory 906, including the non-volatile andvolatile memory device(s) within memory 906, comprises a non-transitorycomputer readable storage medium.

In some embodiments, memory 906 or the non-transitory computer readablestorage medium of memory 906 stores the following programs, modules anddata structures, or a subset thereof including an operating system 916,a network communication module 918, and an instant messenger application931.

The operating system 916 includes procedures for handling various basicsystem services and for performing hardware dependent tasks.

The network communication module 918 facilitates communication withother devices via the one or more communication network interfaces 908(wired or wireless) and one or more communication networks, such as theinternet, other wide area networks, local area networks, metropolitanarea networks, and so on.

In some embodiments, the instant messenger application 931 includes: anIM message receiving module 933 for receiving IM messages from a remoteserver or another IM terminal as described above in connection with FIG.3 (e.g., the message receiving module 340) and FIGS. 5A-5C,respectively; an IM message display module 935 for displaying IMmessages on the display 901 of the mobile device 900 as described abovein connection with FIG. 3 (e.g., the message display module 350) andFIGS. 5A-5C, respectively; a user input detection module 937 fordetecting and interpreting the user input to the mobile device through,e.g., the touch-sensitive display 901, as described above in connectionwith FIG. 3 (e.g., the operation obtaining module 310) and FIGS. 5A-5C,respectively; a request generation module 939 for generating aninformation update request to the remote server or the other IM terminalbased on the user input and sending the request to the remote server orthe other IM terminal as described above in connection with FIG. 3(e.g., the response message obtaining module 360 and the trigger messagesending module 330) and FIGS. 5A-5C, respectively; and an IM messageupdate module 941 for updating the graphical user interface on thedisplay 901 based on the response returned by the remote server or theother terminal as described above in connection with FIG. 3 (e.g., themessage display module 360) and FIGS. 5A-5C, respectively.

While particular embodiments are described above, it will be understoodit is not intended to limit the present disclosure to these particularembodiments. On the contrary, the present disclosure includesalternatives, modifications and equivalents that are within the spiritand scope of the appended claims. Numerous specific details are setforth in order to provide a thorough understanding of the subject matterpresented herein. But it will be apparent to one of ordinary skill inthe art that the subject matter may be practiced without these specificdetails. In other instances, well-known methods, procedures, components,and circuits have not been described in detail so as not tounnecessarily obscure aspects of the embodiments.

The terminology used in the description of the present disclosure hereinis for the purpose of describing particular embodiments only and is notintended to be limiting of the present disclosure. As used in thedescription of the present disclosure and the appended claims, thesingular forms “a,” “an,” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willalso be understood that the term “and/or” as used herein refers to andencompasses any and all possible combinations of one or more of theassociated listed items. It will be further understood that the terms“includes,” “including,” “comprises,” and/or “comprising,” when used inthis specification, specify the presence of stated features, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, operations, elements,components, and/or groups thereof.

As used herein, the term “if” may be construed to mean “when” or “upon”or “in response to determining” or “in accordance with a determination”or “in response to detecting,” that a stated condition precedent istrue, depending on the context. Similarly, the phrase “if it isdetermined [that a stated condition precedent is true]” or “if [a statedcondition precedent is true]” or “when [a stated condition precedent istrue]” may be construed to mean “upon determining” or “in response todetermining” or “in accordance with a determination” or “upon detecting”or “in response to detecting” that the stated condition precedent istrue, depending on the context.

Although some of the various drawings illustrate a number of logicalstages in a particular order, stages that are not order dependent may bereordered and other stages may be combined or broken out. While somereordering or other groupings are specifically mentioned, others will beobvious to those of ordinary skill in the art and so do not present anexhaustive list of alternatives. Moreover, it should be recognized thatthe stages could be implemented in hardware, firmware, software or anycombination thereof.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the present disclosure to the precise forms disclosed. Manymodifications and variations are possible in view of the aboveteachings. The embodiments were chosen and described in order to bestexplain the principles of the present disclosure and its practicalapplications, to thereby enable others skilled in the art to bestutilize the present disclosure and various embodiments with variousmodifications as are suited to the particular use contemplated.

What is claimed is:
 1. A computer-implemented method for updatinginformation in an instant messenger application, comprising: at a mobiledevice having one or more processors and memory storing programs to beexecuted by the one or more processors: displaying a sequence of instantmessages of an instant messenger application, each instant messageoccupying a respective region on a display of the mobile device, whereinthe sequence of instant messages is generated by an official instantmessaging account to which a user of the mobile device has subscribedand a first instant message of the sequence of instant messages includesa first user actionable item; detecting a first user input through thefirst user actionable item of the first instant message; generating aninstant message update request in accordance with the first user input;sending the instant message update request to a remote server hostingthe official instant messaging account; receiving a response from theremote server, the response including a second user actionable itemdetermined by the server in accordance with the instant message updaterequest and a hyperlink to multimedia content in the response from theremote server; and while keeping other instant messages in theirrespective corresponding regions unchanged, updating the first instantmessage by replacing the first user actionable item with the second useractionable item and inserting the hyperlink into content of the firstinstant message.
 2. The computer-implemented method of claim 1, whereinthe first user actionable item is one selected from the group consistingof a push button, a dropdown menu, and a hyperlink.
 3. Thecomputer-implemented method of claim 1, further comprising: detecting auser selection of the hyperlink; downloading the multimedia content froma source defined by the hyperlink in accordance with the user selection;and invoking an application embedded in the instant messengerapplication to render the multimedia content on the display.
 4. Thecomputer-implemented method of claim 3, wherein the multimedia contentis one selected from the group consisting of image, text, audio andvideo.
 5. The computer-implemented method of claim 1, furthercomprising: detecting a second user input through the second useractionable item; in accordance with the second user input: generating asecond instant message update request; sending the second instantmessage update request to the remote server; receiving a second responseto the second instant message update request; and updating the firstinstant message in its respective region in accordance with the secondresponse.
 6. The computer-implemented method of claim 5, wherein, inresponse to the second instant message update request, the remote serveris configured to perform a transaction with a credit card accountassociated with a user using the instant messenger application at themobile device.
 7. The computer-implemented method of claim 1, whereinthe remote server is configured to forward the instant message updaterequest to a user of the instant messenger application at a remoteterminal, receive a message from the remote terminal, the messageincluding information entered by the user through the remote terminal,and prepare the response to the instant message update request inaccordance with the user-entered message.
 8. The computer-implementedmethod of claim 1, wherein the remote server is configured to identify auser account associated with the first instant message, determine amessage predefined in the user account as being associated with theinstant message update request, and prepare the response to the instantmessage update request in accordance with the predefined message.
 9. Amobile device, comprising: one or more processors; memory; and one ormore programs stored in the memory and configured for execution by theone or more processors, the one or more programs further includinginstructions for: displaying a sequence of instant messages of aninstant messenger application, each instant message occupying arespective region on a display of the mobile device, wherein thesequence of instant messages is generated by an official instantmessaging account to which a user of the mobile device has subscribedand a first instant message of the sequence of instant messages includesa first user actionable item; detecting a first user input through thefirst user actionable item of the first instant message; generating aninstant message update request in accordance with the first user input;sending the instant message update request to a remote server hostingthe official instant messaging account; receiving a response from theremote server, the response including a second user actionable itemdetermined by the server in accordance with the instant message updaterequest and a hyperlink to multimedia content in the response from theremote server; and while keeping other instant messages in theirrespective corresponding regions unchanged, updating the first instantmessage by replacing the first user actionable item with the second useractionable item and inserting the hyperlink into content of the firstinstant message.
 10. The mobile device of claim 9, wherein the firstuser actionable item is one selected from the group consisting of a pushbutton, a dropdown menu, and a hyperlink.
 11. The mobile device of claim9, wherein the one or more programs further include instructions for:detecting a user selection of the hyperlink; downloading the multimediacontent from a source defined by the hyperlink in accordance with theuser selection; and invoking an application embedded in the instantmessenger application to render the multimedia content on the display.12. The mobile device of claim 11, wherein the multimedia content is oneselected from the group consisting of image, text, audio and video. 13.The mobile device of claim 9, wherein the one or more programs furtherinclude instructions for: detecting a second user input through thesecond user actionable item; in accordance with the second user input:generating a second instant message update request; sending the secondinstant message update request to the remote server; receiving a secondresponse to the second instant message update request; and updating thefirst instant message in its respective region of the graphical userinterface in accordance with the second response.
 14. The mobile deviceof claim 13, wherein, in response to the second instant message updaterequest, the remote server is configured to perform a transaction with acredit card account associated with a user using the instant messengerapplication at the mobile device.
 15. The mobile device of claim 9,wherein the remote server is configured to forward the instant messageupdate request to a user of the instant messenger application at aremote terminal, receive a message from the remote terminal, the messageincluding information entered by the user through the remote terminal,and prepare the response to the instant message update request inaccordance with the user-entered message.
 16. The mobile device of claim9, wherein the remote server is configured to identify a user accountassociated with the first instant message, determine a messagepredefined in the user account as being associated with the instantmessage update request, and prepare the response to the instant messageupdate request in accordance with the predefined message.
 17. Anon-transitory computer readable storage medium, storing one or moreprograms for execution by one or more processors of a mobile device, theone or more programs including instructions for: displaying a sequenceof instant messages of an instant messenger application, each instantmessage occupying a respective region on a display of the mobile device,wherein the sequence of instant messages is generated by an officialinstant messaging account to which a user of the mobile device hassubscribed and a first instant message of the sequence of instantmessages includes a first user actionable item; detecting a first userinput through the first user actionable item of the first instantmessage; generating an instant message update request in accordance withthe first user input; sending the instant message update request to aremote server hosting the official instant messaging account; receivinga response from the remote server, the response including a second useractionable item determined by the server in accordance with the instantmessage update request and a hyperlink to multimedia content in theresponse from the remote server; and while keeping other instantmessages in their respective corresponding regions unchanged, updatingthe first instant message by replacing the first user actionable itemwith the second user actionable item and inserting the hyperlink intocontent of the first instant message.
 18. The non-transitory computerreadable storage medium of claim 17, wherein the one or more programsfurther include instructions for: detecting a user selection of thehyperlink; downloading the multimedia content from a source defined bythe hyperlink in accordance with the user selection; and invoking anapplication embedded in the instant messenger application to render themultimedia content on the display.
 19. The non-transitory computerreadable storage medium of claim 18, wherein the multimedia content isone selected from the group consisting of image, text, audio and video.20. The non-transitory computer readable storage medium of claim 17,wherein the one or more programs further include instructions for:detecting a second user input through the second user actionable item;in accordance with the second user input: generating a second instantmessage update request; sending the second instant message updaterequest to the remote server; receiving a second response to the secondinstant message update request; and updating the first instant messagein its respective region of the graphical user interface in accordancewith the second response.